home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.5 Complementary Applications 2004 February / SGI IRIX 6.5 Complementary Applications 2004 February.iso / dist / cde.idb / usr / dt / share / include / Xm / FileSBP.h.z / FileSBP.h
Encoding:
C/C++ Source or Header  |  2003-11-18  |  7.4 KB  |  200 lines

  1. /*
  2.  * FileSBP.h
  3.  *
  4.  * Copyright 2000, Silicon Graphics, Inc.
  5.  * ALL RIGHTS RESERVED
  6.  * 
  7.  * UNPUBLISHED -- Rights reserved under the copyright laws of the United
  8.  * States.   Use of a copyright notice is precautionary only and does not
  9.  * imply publication or disclosure.
  10.  *
  11.  * U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND:
  12.  * Use, duplication or disclosure by the Government is subject to restrictions
  13.  * as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights
  14.  * in Technical Data and Computer Software clause at DFARS 252.227-7013 and/or
  15.  * in similar or successor clauses in the FAR, or the DOD or NASA FAR
  16.  * Supplement.  Contractor/manufacturer is Silicon Graphics, Inc.,
  17.  * 2011 N. Shoreline Blvd. Mountain View, CA 94039-7311.
  18.  *
  19.  * THE CONTENT OF THIS WORK CONTAINS CONFIDENTIAL AND PROPRIETARY
  20.  * INFORMATION OF SILICON GRAPHICS, INC. ANY DUPLICATION, MODIFICATION,
  21.  * DISTRIBUTION, OR DISCLOSURE IN ANY FORM, IN WHOLE, OR IN PART, IS STRICTLY
  22.  * PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SILICON
  23.  * GRAPHICS, INC.
  24.  */
  25. /* 
  26.  * @OSF_COPYRIGHT@
  27.  * (c) Copyright 1990, 1991, 1992, 1993, 1994 OPEN SOFTWARE FOUNDATION, INC.
  28.  * ALL RIGHTS RESERVED
  29.  *  
  30. */ 
  31. /*
  32.  * HISTORY
  33.  * Motif Release 1.2.5
  34. */
  35. /*   $XConsortium: FileSBP.h /main/cde1_maint/2 1995/08/18 19:04:10 drk $ */
  36. /*
  37. *  (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
  38. /*
  39. *  (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  40. #ifndef _XmFSelectP_h
  41. #define _XmFSelectP_h
  42.  
  43. #include <Xm/SelectioBP.h>
  44. #include <Xm/FileSB.h>
  45.  
  46. #ifdef __cplusplus
  47. extern "C" {
  48. #endif
  49.  
  50. /* Defines for use in allocation geometry matrix. */
  51.  
  52. #define XmFSB_MAX_WIDGETS_VERT   10 
  53.  
  54. /* Bit locations for the state_flags bit field.
  55. */
  56. #define XmFS_NO_MATCH        (1 << 0)
  57. #define XmFS_IN_FILE_SEARCH    (1 << 1)
  58. #define XmFS_DIR_SEARCH_PROC    (1 << 2)
  59.  
  60. /* Constraint part record for FileSelectionBox widget */
  61.  
  62. typedef struct _XmFileSelectionBoxConstraintPart
  63. {
  64.    char unused;
  65. } XmFileSelectionBoxConstraintPart, * XmFileSelectionBoxConstraint;
  66.  
  67. /*  New fields for the FileSelectionBox widget class record  */
  68.  
  69. typedef struct
  70. {
  71.     XtPointer           extension;      /* Pointer to extension record */
  72. } XmFileSelectionBoxClassPart;
  73.  
  74.  
  75. /* Full class record declaration */
  76.  
  77. typedef struct _XmFileSelectionBoxClassRec
  78. {
  79.    CoreClassPart       core_class;
  80.    CompositeClassPart  composite_class;
  81.    ConstraintClassPart constraint_class;
  82.    XmManagerClassPart  manager_class;
  83.    XmBulletinBoardClassPart    bulletin_board_class;
  84.    XmSelectionBoxClassPart    selection_box_class;
  85.    XmFileSelectionBoxClassPart    file_selection_box_class;
  86. } XmFileSelectionBoxClassRec;
  87.  
  88. externalref XmFileSelectionBoxClassRec xmFileSelectionBoxClassRec;
  89.  
  90.  
  91. /* New fields for the FileSelectionBox widget record */
  92.  
  93. typedef struct
  94. {
  95.     XmString        directory;        /* directory specification */
  96.     XmString        pattern;          /* file search pattern */
  97.     Widget          dir_list_label;   /* directory list Label */
  98.     XmString        dir_list_label_string;/* directory list label text */
  99.     Widget          dir_list;         /* directory List */
  100.     XmString *      dir_list_items;   /* items in directory List */
  101.     int             dir_list_item_count;/* number of items in directory List */
  102.     int             dir_list_selected_item_position;
  103.     Widget          filter_label;     /* file search filter label */
  104.     XmString        filter_label_string;/* filter label text */
  105.     Widget          filter_text;      /* filter text entry field */
  106.     XmString        dir_mask;         /* string in filter text entry field */
  107.     XmString        no_match_string;  /* string in list when no file match */
  108.     XmQualifyProc   qualify_search_data_proc; /* directory and mask routine */
  109.     XmSearchProc    dir_search_proc;  /* change directory routine */
  110.     XmSearchProc    file_search_proc; /* file search routine */
  111.     unsigned char   file_type_mask;   /* mask for type of files in file list */
  112.     Boolean         list_updated;     /* flag to indicate file list update   */
  113.     Boolean         directory_valid ; /* flag to indicate valid new directory*/
  114.     unsigned char   state_flags ;     /* internal flags to indicate state.   */
  115.  
  116. } XmFileSelectionBoxPart;
  117.  
  118.  
  119. /****************************************************************
  120.  *
  121.  * Full instance record declaration
  122.  *
  123.  ****************************************************************/
  124.  
  125. typedef struct _XmFileSelectionBoxRec
  126. {
  127.     CorePart                core;
  128.     CompositePart           composite;
  129.     ConstraintPart          constraint;
  130.     XmManagerPart           manager;
  131.     XmBulletinBoardPart     bulletin_board;
  132.     XmSelectionBoxPart      selection_box;
  133.     XmFileSelectionBoxPart  file_selection_box;
  134. } XmFileSelectionBoxRec;
  135.  
  136.  
  137. /* Access macros */
  138.  
  139. #define FS_Directory( w) \
  140.                 (((XmFileSelectionBoxWidget)(w))->file_selection_box.directory)
  141. #define FS_DirMask( w) \
  142.                  (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_mask)
  143. #define FS_DirListLabel( w) \
  144.            (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_label)
  145. #define FS_DirListLabelString( w) \
  146.     (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_label_string)
  147. #define FS_DirList( w) \
  148.                  (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list)
  149. #define FS_DirListItems( w) \
  150.            (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_items)
  151. #define FS_DirListItemCount( w) \
  152.       (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_list_item_count)
  153. #define FS_FilterLabel( w) \
  154.              (((XmFileSelectionBoxWidget)(w))->file_selection_box.filter_label)
  155. #define FS_FilterLabelString( w) \
  156.       (((XmFileSelectionBoxWidget)(w))->file_selection_box.filter_label_string)
  157. #define FS_FilterText( w) \
  158.               (((XmFileSelectionBoxWidget)(w))->file_selection_box.filter_text)
  159. #define FS_Pattern( w) \
  160.                   (((XmFileSelectionBoxWidget)(w))->file_selection_box.pattern)
  161. #define FS_NoMatchString( w) \
  162.           (((XmFileSelectionBoxWidget)(w))->file_selection_box.no_match_string)
  163. #define FS_QualifySearchDataProc( w) (((XmFileSelectionBoxWidget) \
  164.                              (w))->file_selection_box.qualify_search_data_proc)
  165. #define FS_DirSearchProc( w) \
  166.           (((XmFileSelectionBoxWidget)(w))->file_selection_box.dir_search_proc)
  167. #define FS_FileSearchProc( w) \
  168.          (((XmFileSelectionBoxWidget)(w))->file_selection_box.file_search_proc)
  169. #define FS_RealDefaultButton( w) \
  170.       (((XmFileSelectionBoxWidget)(w))->file_selection_box.real_default_button)
  171. #define FS_FileTypeMask( w) \
  172.            (((XmFileSelectionBoxWidget)(w))->file_selection_box.file_type_mask)
  173. #define FS_ListUpdated( w) \
  174.              (((XmFileSelectionBoxWidget)(w))->file_selection_box.list_updated)
  175. #define FS_DirectoryValid( w) \
  176.           (((XmFileSelectionBoxWidget)(w))->file_selection_box.directory_valid)
  177. #define FS_StateFlags( w) \
  178.               (((XmFileSelectionBoxWidget)(w))->file_selection_box.state_flags)
  179. #define FS_DirListSelectedItemPosition( w) (((XmFileSelectionBoxWidget) w) \
  180.                           ->file_selection_box.dir_list_selected_item_position)
  181.  
  182.  
  183. /********    Private Function Declarations    ********/
  184. #ifdef _NO_PROTO
  185.  
  186.  
  187. #else
  188.  
  189.  
  190. #endif /* _NO_PROTO */
  191. /********    End Private Function Declarations    ********/
  192.  
  193.  
  194. #ifdef __cplusplus
  195. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  196. #endif
  197.  
  198. #endif /* _XmFSelectP_h */
  199. /* DON'T ADD ANYTHING AFTER THIS #endif */
  200.